티스토리 뷰

공부합시다

MYSQL EXPLAIN ?

IamMH 2014. 7. 28. 11:20

EXPAIN을 사용하려면 쿼리의 SELECT 키워드 앞에 EXPLAIN이란 단어를 붙여 주면 된다.   


쿼리에 있는 테이블 하나당 한 행씩 출력된다. 두 개의 테이블을 조인하는 쿼리라면 두행이 출력된다. 여기서 말하는 테이블은 서브쿼리를 의미할 수 있고 UNION결과일 수도, 또 다른 것일 수도 있다.


EXPLAIN EXTENDED는 EXPAIN처럼 동작하는 동시에 SELECT구문으로 역 컴파일 하도록 요청한다. MYSQL 5.0이후버전 부터 사용가능

EXPLAIN PARTTIONS MYSQL 5.1버전 이후 버전에서만 가능. 쿼리가 이용하는 파티션 정보까지 보여준다.    


EXPLAIN을 추가하면 쿼리가 실행되지 않을 거라 생각하지만 서브쿼리가 존재한 경우 MYSQL은 실제 서브쿼리를 실행하고 그 결과를 임시테이블로 만든 다음 최적화를 마무리한다. 때문에 뷰나 서브쿼리가 큰 경우 서버에 상당한 부담이 될수 있다.



'공부합시다' 카테고리의 다른 글

두개이상 컬럼 추가 alter table  (0) 2014.08.12
focusout  (0) 2014.08.06
javascript 백스페이스로 뒤로가기 막기  (0) 2014.06.16
자바스크립트 버전넣기  (0) 2014.06.12
유튜브 동영상 z-index 문제  (0) 2014.06.09
댓글